package com.joysuch.wwyt.core.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.joysuch.wwyt.core.entity.BaseRoleDataDepartAuth;
import org.mapstruct.Mapper;
import org.springframework.data.repository.query.Param;

import java.util.List;
import java.util.Set;

@Mapper
public interface BaseRoleDataDepartAuthMapper extends BaseMapper<BaseRoleDataDepartAuth> {
    int deleteByPrimaryKey(Long id);

    int insert(BaseRoleDataDepartAuth record);

    int insertSelective(BaseRoleDataDepartAuth record);

    BaseRoleDataDepartAuth selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(BaseRoleDataDepartAuth record);

    int updateByPrimaryKey(BaseRoleDataDepartAuth record);

    void deleteBatch( List<Long> list);

    IPage<BaseRoleDataDepartAuth> queryByRoleId(Page<BaseRoleDataDepartAuth> page, @Param("roleId") Long roleId);

    List<BaseRoleDataDepartAuth> queryByRoleIds(List<Long> list);

    BaseRoleDataDepartAuth checkRepeat(Long roleId, Long departId);

    List<BaseRoleDataDepartAuth> selectByRoleId(Long role);

    List<BaseRoleDataDepartAuth> selectAllList();

    Set<Long> selectJobForReport(Long tenantId,String orgCode);
}